package cn.jtfadmin.base.dict.service;


import cn.jtfadmin.base.dict.dto.DictItemModelDTO;
import cn.jtfadmin.base.dict.dto.DictModelDTO;

import javax.validation.constraints.NotBlank;
import java.util.List;

/**
 * 字典服务类
 */
public interface DictService {

    /**
     * 按照字典code和字典值获取字典显示
     *
     * @param dictCode  字典编码
     * @param dictValue 字典值
     * @return
     */
    String getDictText(@NotBlank String dictCode, @NotBlank String dictValue);

    /**
     * 按照字典code和字典值获取字典值
     * @param dictCode 字典编码
     * @param dictText 字典显示
     * @return
     */
    String getDictValue(@NotBlank String dictCode, @NotBlank String dictText);


    /**
     * 按照字典code查询字典model
     *
     * @param dictCode 字典编码
     * @return 字典项目model
     */
    List<DictItemModelDTO> findDictItemModelByCode(@NotBlank String dictCode);


    /**
     * 按照字典名称和字典描述like查询
     *
     * @param name     字典名
     * @param describe 字典描述
     * @return 字典
     */
    List<DictModelDTO> findAll(String name, String describe);
}
